package file;

import java.io.File;
import java.io.FileFilter;

public class FileFilterDemo {
    public static void main(String[] args) {
        /*
        //过滤条件:筛选.txt的文件
        FileFilter filter = new FileFilter() {
            @Override//过滤器的筛选方法
            public boolean accept(File pathname) {
                //写筛选逻辑:pathname 代表每个被筛选的文件
                //找到文件名,检查文件名的末尾是否以.txt为结束
                //如果方法返回true表示是被选定的文件,
                //返回false就是被忽略的文件
                String name = pathname.getName();
                return name.endsWith(".txt");

//               if(name.endsWith(".txt")){
//                   return true;
//              }else {
//                  return false;
//              }

            }
        };


        File dir = new File("./");
        if(dir.isDirectory()){
            File[] files = dir.listFiles(filter);
            for(File file:files){
                System.out.println(file);
            }
        }

         */

        File dir = new File("./");
        if(dir.isDirectory()){
            File[] files = dir.listFiles(new FileFilter() {
                @Override
                public boolean accept(File pathname) {
                    return pathname.getName().endsWith(".txt");
                }
            });
            //FileFilter filter1 = (File pathname)->{return pathname.getName().endsWith(".txt");}; 2
            //FileFilter filter2 = pathname->pathname.getName().endsWith(".txt"); 3
            for(File file:files){
                System.out.println(file);
            }
        }








    }
}
